package com.acegear.horizon.domain.events;

import com.acegear.horizon.domain.models.constraint.ClubEventType;
import com.acegear.horizon.domain.models.jpa.Address;
import com.acegear.horizon.domain.models.jpa.Location;

/**
 * Created by guoweike on 17/1/9.
 */
//活动修改
public class ActivityModifiedEvent extends BaseEvent {

  private Long activityId;

  private Long ownerId;


  private ClubEventType type;

  private String name;


  private Long startAt;

  private Long endAt;

  private String servicePhone;

  private String cover;


  private String summary;

  private String memo;


  private boolean state;


  private Location location;


  private Address address;

  private boolean deleted;


  public ActivityModifiedEvent(Long activityId, Long ownerId, ClubEventType type, String name,
                               Long startAt, Long endAt, String servicePhone, String cover,
                               String summary, String memo, boolean state, Location location,
                               Address address, boolean deleted) {
    this.activityId = activityId;
    this.ownerId = ownerId;
    this.type = type;
    this.name = name;
    this.startAt = startAt;
    this.endAt = endAt;
    this.servicePhone = servicePhone;
    this.cover = cover;
    this.summary = summary;
    this.memo = memo;
    this.state = state;
    this.location = location;
    this.address = address;
    this.deleted = deleted;
    genEventId();
  }

  public ActivityModifiedEvent() {
  }

  public Long getActivityId() {
    return activityId;
  }

  public void setActivityId(Long activityId) {
    this.activityId = activityId;
  }

  public Long getOwnerId() {
    return ownerId;
  }

  public void setOwnerId(Long ownerId) {
    this.ownerId = ownerId;
  }


  public String getName() {
    return name;
  }

  public void setName(String name) {
    this.name = name;
  }

  public Long getStartAt() {
    return startAt;
  }

  public void setStartAt(Long startAt) {
    this.startAt = startAt;
  }

  public Long getEndAt() {
    return endAt;
  }

  public void setEndAt(Long endAt) {
    this.endAt = endAt;
  }

  public String getServicePhone() {
    return servicePhone;
  }

  public void setServicePhone(String servicePhone) {
    this.servicePhone = servicePhone;
  }

  public String getCover() {
    return cover;
  }

  public void setCover(String cover) {
    this.cover = cover;
  }

  public String getSummary() {
    return summary;
  }

  public void setSummary(String summary) {
    this.summary = summary;
  }

  public String getMemo() {
    return memo;
  }

  public void setMemo(String memo) {
    this.memo = memo;
  }

  public boolean isState() {
    return state;
  }

  public void setState(boolean state) {
    this.state = state;
  }

  public Location getLocation() {
    return location;
  }

  public void setLocation(Location location) {
    this.location = location;
  }

  public Address getAddress() {
    return address;
  }

  public void setAddress(Address address) {
    this.address = address;
  }

  public boolean isDeleted() {
    return deleted;
  }

  public void setDeleted(boolean deleted) {
    this.deleted = deleted;
  }

  public ClubEventType getType() {
    return type;
  }

  public void setType(ClubEventType type) {
    this.type = type;
  }

  @Override
  public String routingKey() {
    return "horizon.domain.activity.update";
  }
}

